package com.suanfa.leetcode.twosum;

public class TwoSum {
    /**
     * TODO 给定一个整数数组 nums和一个整数目标值target，请你在该数组中找出和为目标值target的那两个整数，
     *      并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是，数组中同一个元素在答案里不能重复出现。
     *      你可以按任意顺序返回答案。
     * @param nums
     * @param target
     * @return
     */
    //TODO {2,7,11,6} 9,返回[1,2]
    public static int[] twoSum(int[] nums,int target){
        for (int i = 0; i < nums.length; i++) {
            //目标值减去第i个数字，查找剩余数字是否存在该结果，9-2=7
            int remain=target-nums[i];
            for (int j = 0; j < nums.length; j++) {
                if (remain==nums[j]&&j!=i){
                    return new int[]{i,j};
                }
            }
        }
        return null;
    }
    //测试
    public static void main(String[] args) {
        int[] ints = twoSum(new int[]{1, 3, 5, 7}, 10);
        if (ints != null) {
            for (int anInt : ints) {
                System.err.println(anInt);
            }
        }else
            System.err.println("不存在数字");
    }
}
